// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:03


// Source File Name:   md.java

package com.zelix;

import java.io.*;
import java.util.*;


//            kd, nd, ie, td, 
//            pd, bn, sn, wn, 
//            lx, ux, qy, jb, 
//            um

public class md extends kd
        implements ie {

    int g;
    td h;
    public static int j;
    private static String z;

    md(int i, jb jb, int k, qy qy1)
            throws IOException {
        super(i);
        g = k;
        int l = a(jb);
        qy1.b(kd.c.a(l), this);
    }

    public md(int i, td td1) {
        super(i);
        g = -1;
        h = td1;
    }

    public sn a(sn sn1, boolean flag, boolean flag1, um um) {
        wn awn[] = sn1.c();
        wn awn1[] = sn1.f();
        Object obj = null;
        int i = awn.length;
        e1 e1 = sn1.e();
        switch (super.d) {
            case 153:
            case 154:
            case 155:
            case 156:
            case 157:
            case 158:
                wn awn2[] = wn.a(i - 1);
                System.arraycopy(awn, 0, awn2, 0, i - 1);
                return new sn(awn2, awn1, e1);

            case 159:
            case 160:
            case 161:
            case 162:
            case 163:
            case 164:
                wn awn3[] = wn.a(i - 2);
                System.arraycopy(awn, 0, awn3, 0, i - 2);
                return new sn(awn3, awn1, e1);

            case 165:
            case 166:
                wn awn4[] = wn.a(i - 2);
                System.arraycopy(awn, 0, awn4, 0, i - 2);
                return new sn(awn4, awn1, e1);

            case 198:
            case 199:
                wn awn5[] = wn.a(i - 1);
                System.arraycopy(awn, 0, awn5, 0, i - 1);
                return new sn(awn5, awn1, e1);

            case 167:
            case 168:
            case 200:
            case 201:
                return null;

            case 169:
            case 170:
            case 171:
            case 172:
            case 173:
            case 174:
            case 175:
            case 176:
            case 177:
            case 178:
            case 179:
            case 180:
            case 181:
            case 182:
            case 183:
            case 184:
            case 185:
            case 186:
            case 187:
            case 188:
            case 189:
            case 190:
            case 191:
            case 192:
            case 193:
            case 194:
            case 195:
            case 196:
            case 197:
            default:
                lx.b(false, z + super.d);
                return null;
        }
    }

    public final boolean b() {
        switch (super.d) {
            case 167:
            case 168:
            case 200:
            case 201:
                return false;

            case 153:
            case 154:
            case 155:
            case 156:
            case 157:
            case 158:
            case 159:
            case 160:
            case 161:
            case 162:
            case 163:
            case 164:
            case 165:
            case 166:
            case 198:
            case 199:
                return true;

            case 169:
            case 170:
            case 171:
            case 172:
            case 173:
            case 174:
            case 175:
            case 176:
            case 177:
            case 178:
            case 179:
            case 180:
            case 181:
            case 182:
            case 183:
            case 184:
            case 185:
            case 186:
            case 187:
            case 188:
            case 189:
            case 190:
            case 191:
            case 192:
            case 193:
            case 194:
            case 195:
            case 196:
            case 197:
            default:
                lx.b(false, z + super.d);
                break;
        }
        return true;
    }

    public final boolean a(int i, int k) {
        switch (super.d) {
            case 167:
            case 168:
            case 200:
            case 201:
                return false;

            case 153:
            case 154:
            case 155:
            case 156:
            case 157:
            case 158:
            case 159:
            case 160:
            case 161:
            case 162:
            case 163:
            case 164:
            case 165:
            case 166:
            case 198:
            case 199:
                return i >= k;

            case 169:
            case 170:
            case 171:
            case 172:
            case 173:
            case 174:
            case 175:
            case 176:
            case 177:
            case 178:
            case 179:
            case 180:
            case 181:
            case 182:
            case 183:
            case 184:
            case 185:
            case 186:
            case 187:
            case 188:
            case 189:
            case 190:
            case 191:
            case 192:
            case 193:
            case 194:
            case 195:
            case 196:
            case 197:
            default:
                lx.b(false, z + super.d);
                break;
        }
        return false;
    }

    public final boolean c() {
        return false;
    }

    public void a(PrintWriter printwriter, StringBuffer stringbuffer, int i) {
        StringBuffer stringbuffer1 = new StringBuffer(100);
        String s = kd.h(super.d);
        stringbuffer1.append(s + " " + h.p());
        String s1 = kd.e(super.d);
        s1 = kd.a(s1, h.p());
        if (s1 != null)
            stringbuffer1.append("\t" + s1);
        printwriter.println(stringbuffer.toString() + stringbuffer.toString() + stringbuffer1);
    }

    int p() {
        return h.q() - g;
    }

    int a(jb jb)
            throws IOException {
        short word0 = jb.readShort();
        return g + word0;
    }

    public td q() {
        return h;
    }

    public int d() {
        return 3;
    }

    public ArrayList g() {
        int i = p();
        if (i < -32768 || i > 32767) {
            ArrayList arraylist = new ArrayList(5);
            td td1 = h;
            td td2 = new td(true);
            td td3 = new td(true);
            a(td2);
            arraylist.add(this);
            arraylist.add(new nd(td3));
            arraylist.add(td2);
            arraylist.add(new pd(200, td1));
            arraylist.add(td3);
            return arraylist;
        } else {
            return null;
        }
    }

    public String a() {
        return e();
    }

    public void a(Hashtable hashtable, qy qy1, Vector vector) {
        bn bn1 = null;
        if ((bn1 = (bn) hashtable.get(h)) == null) {
            bn1 = new bn();
            hashtable.put(h, bn1);
            vector.addElement(bn1);
        }
        qy1.b(this, bn1);
    }

    void a(td td1) {
        h = td1;
    }

    public void a(Integer integer, td td1) {
        h = td1;
        td1.a(true);
    }

    public void m(int i) {
        g = i;
    }

    public boolean o() {
        switch (super.d) {
            case 168:
            case 201:
                return true;

            case 153:
            case 154:
            case 155:
            case 156:
            case 157:
            case 158:
            case 159:
            case 160:
            case 161:
            case 162:
            case 163:
            case 164:
            case 165:
            case 166:
            case 167:
            case 198:
            case 199:
            case 200:
                return false;

            case 169:
            case 170:
            case 171:
            case 172:
            case 173:
            case 174:
            case 175:
            case 176:
            case 177:
            case 178:
            case 179:
            case 180:
            case 181:
            case 182:
            case 183:
            case 184:
            case 185:
            case 186:
            case 187:
            case 188:
            case 189:
            case 190:
            case 191:
            case 192:
            case 193:
            case 194:
            case 195:
            case 196:
            case 197:
            default:
                lx.b(false, z + super.d);
                break;
        }
        return false;
    }

    public void a(DataOutputStream dataoutputstream)
            throws IOException {
        super.a(dataoutputstream);
        b(dataoutputstream);
    }

    void b(DataOutputStream dataoutputstream)
            throws IOException {
        dataoutputstream.writeShort(p());
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key = 0x33;
                    break;
                case 1:
                    key = 105;
                    break;
                case 2:
                    key = 80;
                    break;
                case 3:
                    key = 17;
                    break;
                default:
                    key = 114;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }

    static {
        z = z("Z\007&p\036Z\rp~\002P\0064tR".toCharArray());
    }
}